package com.vp.org.dao;

import com.vp.org.pojo.AdminInfo;
import com.vp.org.pojo.BookInfo;
import com.vp.org.pojo.UserInfo;

import java.awt.print.Book;
import java.util.List;
import java.util.Map;

public interface BookInfoDao {

    // 查询书籍 queryAllBooks
    List<BookInfo> queryAllBooks();

    //查询书籍详情 queryBookDetails
    // 书籍默认显示（按时间倒序显示,查询所有）(可以根据实际情况，控制每页显示的条数)
    BookInfo queryBookDetails(BookInfo bookInfo);

    // 模糊查询书籍 fuzzy query book（加分页）
    List<BookInfo> fuzzyQueryBook(int page, BookInfo bookInfo);

    // 模糊查询书籍页数 fuzzy query book page
    long fuzzyQueryBookPage(BookInfo bookInfo);

    // 模糊查询书籍是否存在 fuzzy query book is exist
    boolean fuzzyQueryBookIsExist(BookInfo bookInfo);

    // 书籍分页查询 book paging query
    List<BookInfo> bookPagingQuery(BookInfo bookInfo, int page, int count);

    // 分页展示页数 paging show page
    long pagingShowPage(BookInfo bookInfo);


    // 后台添加书籍 adminAddBook
    int adminAddBook(BookInfo bookInfo, AdminInfo adminInfo);

    // 后台查询书籍 adminQueryBook
     List<BookInfo> adminQueryBook(AdminInfo adminInfo,int page);

     // 后台查询书的总数
     long BookPage();

    //后台查询书籍页数 adminQueryBookPage
    int adminQueryBookPage();

    // 书后台籍分页查询 book paging query
    List<BookInfo> adminBookPagingQuery(int page, int count);

    // 后台书籍删除
    int adminDeleteBook(BookInfo bookInfo,AdminInfo adminInfo);

    // 后台书籍修改
    int adminUpdateBook(BookInfo bookInfo);

    //促销商品总数
    // select count(discount) from book_info where discount < 1;
    long promotionCount();

    // 促销商品总页数
    int promotionPage();

    // 促销商品分页查询
    // select id,product_num,name,price,discount_price,img,discount,status,type,fit_grade,author,publish_house,publish_date,integral,upload_time from book_info where discount < 1 limit 0,6;
    List<BookInfo> promotionBooks(int page);




}